.flex {
    height: 100%;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: stretch;
    -webkit-align-content: stretch;
    align-content: stretch
}

.flex,.flex:after,.flex:before {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex
}

.flex:after,.flex:before {
    content: ''
}

.flex.flex.flex-row {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row
}

.flex.flex-row-reverse {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.flex.flex-column {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.flex.flex-column-reverse {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

.flex.flex-nowrap {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.flex.flex-justify-start {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.flex.flex-justify-center {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.flex.flex-justify-end {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.flex.flex-justify-space-between {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.flex.flex-justify-space-around {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.flex.flex-align-start {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start
}

.flex.flex-align-center {
    -webkit-align-items: flex-center;
    -ms-flex-align: center;
    -ms-grid-row-align: flex-center;
    align-items: flex-center
}

.flex.flex-align-end {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -ms-grid-row-align: flex-end;
    align-items: flex-end
}

.flex.flex-align-baseline {
    -webkit-align-items: baseline;
    -ms-flex-align: baseline;
    -ms-grid-row-align: baseline;
    align-items: baseline
}

.flex.flex-align-stretch {
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    -ms-grid-row-align: stretch;
    align-items: stretch
}

.flex-item {
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.flex-item.flex-align-start {
    -ms-flex-item-align: start;
    -webkit-align-self: flex-start;
    align-self: flex-start
}

.flex-item.flex-align-center {
    -ms-flex-item-align: center;
    -webkit-align-self: center;
    align-self: center
}

.flex-item.flex-align-end {
    -ms-flex-item-align: end;
    -webkit-align-self: flex-end;
    align-self: flex-end
}

.flex-item.flex-align-baseline {
    -ms-flex-item-align: baseline;
    -webkit-align-self: baseline;
    align-self: baseline
}

.flex-item.flex-align-stretch {
    -ms-flex-item-align: stretch;
    -webkit-align-self: stretch;
    align-self: stretch
}